define(['jquery', 'bootstrap', 'backend', 'addtabs', 'table', 'echarts', 'echarts-theme', 'template', 'form'], function ($, undefined, Backend, Datatable, Table, Echarts, undefined, Template, Form) {

    var Controller = {
        index: function () {
            // 基于准备好的dom，初始化echarts实例
            var myChart = Echarts.init(document.getElementById('echart'), 'walden');

            // 指定图表的配置项和数据
            var option = {
                title: {
                    text: '',
                    subtext: ''
                },
                color: [
                    "#18d1b1",
                    "#3fb1e3",
                    "#626c91",
                    "#a0a7e6",
                    "#c4ebad",
                    "#96dee8"
                ],
                tooltip: {
                    trigger: 'axis'
                },
                legend: {
                    data: [__('Register user')]
                },
                toolbox: {
                    show: false,
                    feature: {
                        magicType: { show: true, type: ['stack', 'tiled'] },
                        saveAsImage: { show: true }
                    }
                },
                xAxis: {
                    type: 'category',
                    boundaryGap: false,
                    data: Config.column
                },
                yAxis: {},
                grid: [{
                    left: 'left',
                    top: 'top',
                    right: '10',
                    bottom: 30
                }],
                series: [{
                    name: __('Register user'),
                    type: 'line',
                    smooth: true,
                    areaStyle: {
                        normal: {}
                    },
                    lineStyle: {
                        normal: {
                            width: 1.5
                        }
                    },
                    data: Config.userdata
                }]
            };

            // 使用刚指定的配置项和数据显示图表。
            myChart.setOption(option);

            $(window).resize(function () {
                myChart.resize();
            });

            $(document).on("click", ".btn-refresh", function () {
                setTimeout(function () {
                    myChart.resize();
                }, 0);
            });

        },
        trade: function () {
            $('#c-store_id').data('eSelect', function(){
                $.request($('#c-store_id').val())
            });
            Form.api.bindevent($("form[role=form]"));
            var charts = Echarts.init(document.getElementById('chart'));
            var option = {
                title: {
                    text: '交易统计'
                },
                tooltip: {
                    trigger: 'axis'
                },
                legend: {
                    data: []
                },
                grid: {
                    left: '3%',
                    right: '4%',
                    bottom: '3%',
                    containLabel: true
                },
                toolbox: {
                    feature: {
                        saveAsImage: {}
                    }
                },
                xAxis: {
                    type: 'category',
                    boundaryGap: false,
                    data: []
                },
                yAxis: [
                    {
                        type: 'value',
                        axisLabel: {
                            formatter: function (val) {
                              return val / 100000 
                            }
                        }
                    },
                    {
                        type: 'value',
                        position: 'right'
                    }
                ],
                series: [
                    
                ]
            };
            $.extend({
                request: function(store_id = null){
                    charts.showLoading();
                    $.ajax({
                        url: 'dashboard/trade',
                        method: 'GET',
                        dataType: 'json',
                        data: {store_id: store_id ? store_id : 0},
                        complete: function(data){
                            charts.hideLoading();
                        },
                        success: function(data){
                            if(data.code == 1){
                                option.xAxis.data = Object.keys(data.data)
                                option.legend.data = Object.keys(Object.values(data.data)[0])
                                var series = {};
                                $.each(data.data, function(i,v){
                                    $.each(v, function(ii, vv){
                                        series[ii] = series[ii] ? series[ii] : [];
                                        series[ii].push(vv);
                                    });
                                });
                                option.series =  [];
                                $.each(series, function(i,v){
                                    option.series.push({
                                        name: i,
                                        type: 'line',
                                        yAxisIndex: i == '订单数' ? 1 : 0,
                                        smooth: true,
                                        data: v
                                    });
                                });
                                console.log(option);
                                charts.setOption(option, true)
                            }
                        },
                    });
                }
            });
            $.request();
            
            $(window).resize(function () {
                charts.resize();
            });
        }
    };

    return Controller;
});
